home *** CD-ROM | disk | FTP | other *** search
- /*
- * name: lblt
- *
- * description: given a layer l, a bitmap sb, a rectangle r
- * and a function code f, copy the off-screen bitmap sb
- * to a rectangle r within layer l, using the function code f.
- *
- * synopsis: lblt (l, sb, r, hb, pt, f)
- * struct layer *l;
- * struct bitmap *sb;
- * struct rectangle *r;
- * struct bitmap *hb;
- * struct point *pt;
- * int f;
- *
- * globals: lbblt ()
- *
- * calls: layerop (layerop.c)
- * raddp (raddp.c)
- *
- * called by: this is a top-level function.
- * lbitblt (lbitblt.c)
- */
- #include "layers.h"
-
- lblt (l, sb, r, hb, pt, f)
- struct layer *l;
- struct bitmap *sb;
- struct rectangle *r;
- struct bitmap *hb;
- struct point *pt;
- int f;
- {
- struct point dp;
- struct rectangle rr;
-
- int lbblt ();
-
- dp.x = (pt -> x) - (r -> origin.x);
- dp.y = (pt -> y) - (r -> origin.y);
- rr.origin.x = (r -> origin.x) + dp.x;
- rr.origin.y = (r -> origin.y) + dp.y;
- rr.corner.x = (r -> corner.x) + dp.x;
- rr.corner.y = (r -> corner.y) + dp.y;
- (void) layerop (l, lbblt, &rr, sb, hb, &dp, &f);
- }